/*
 *
 * Copyright (C) 2012 Walter Lütgenau
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 
 */
package offset.nodes.server.workflow.model;

import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Walter Lütgenau
 */
public class State {

    enum DisplayType {

        template, builtIn, jsp
    };
    boolean tree = false;
    String name;
    String description;
    DisplayType displayType;
    String virtualPageInstanceUUID;
    boolean directEdit;
    String relativePath;
    String contentType;
    boolean newState;
    List<String> transitionNames = new ArrayList<String>();
    List<String> roleUUIDs = new ArrayList<String>();

    public State(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public DisplayType getDisplayType() {
        return displayType;
    }

    public void setDisplayType(DisplayType displayType) {
        this.displayType = displayType;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getRelativePath() {
        return relativePath;
    }

    public void setRelativePath(String relativePath) {
        this.relativePath = relativePath;
    }

    public boolean isNewState() {
        return newState;
    }

    public void setNewState(boolean newState) {
        this.newState = newState;
    }

    public String getVirtualPageInstanceUUID() {
        return virtualPageInstanceUUID;
    }

    public void setVirtualPageInstanceUUID(String virtualPageInstanceUUID) {
        this.virtualPageInstanceUUID = virtualPageInstanceUUID;
    }

    public List<String> getTransitionNames() {
        return transitionNames;
    }

    public void setTransitionNames(List<String> transitionNames) {
        this.transitionNames = transitionNames;
    }

    public List<String> getRoleUUIDs() {
        return roleUUIDs;
    }

    public void setRoleUUIDs(List<String> roleUUIDs) {
        this.roleUUIDs = roleUUIDs;
    }

    public String getContentType() {
        return contentType;
    }

    public void setContentType(String contentType) {
        this.contentType = contentType;
    }

    public boolean isDirectEdit() {
        return directEdit;
    }

    public void setDirectEdit(boolean directEdit) {
        this.directEdit = directEdit;
    }

    public boolean isTree() {
        return tree;
    }

    public void setTree(boolean tree) {
        this.tree = tree;
    }

}
